package com.srx.elasticsearch.controller;/*
package com.srx.elasticsearch.controller;

import com.srx.elasticsearch.service.BookService;
import com.srx.openfeign.dto.BookDTO;
import com.srx.openfeign.dto.NoticeDTO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.io.IOException;
import java.util.List;

*/
/**
 * 图书控制器类，处理与用户相关的请求
 * <p>
 * 该类负责处理用户查询相关的操作。
 * @author srx
 *//*

@RestController
@RequestMapping("/elasticsearch/book")
public class BookController
{

	private final BookService bookService;

	@Autowired
	public BookController(BookService bookService)
	{
		this.bookService = bookService;
	}




    */
/**
     * 获取所有图书个数
     * @return 图书总数量
     * @throws IOException IO异常
     *//*

    @GetMapping("/count")
    public long getAllBookCount() throws IOException
    {
        return bookService.getAllBookCount();
    }


    */
/**
     * 根据分类ID获取该分类下的图书数量
     *
     * @param id 分类ID，用于筛选指定分类的图书
     * @return 返回指定分类下的图书总数
     * @throws IOException 当与搜索引擎通信出现IO异常时抛出
     *//*

    @GetMapping("/category-count/{id}")
    public long getCategoryBookCount(@PathVariable("id") int id) throws IOException
    {
        return bookService.getCategoryBookCount(id);
    }


    */
/**
     * 根据分类ID获取图书ID列表
     * @param categoryId 分类ID
     * @return 该分类下的图书ID列表
     *//*

    @GetMapping("/category-book/{page}/{size}/{categoryId}")
    public List<String> getBookIdListByCategoryId(@PathVariable("page") int page, @PathVariable("size") int size, @PathVariable("categoryId") int categoryId) throws IOException
    {
        return bookService.getBookIdListByCategoryId(page, size, categoryId);
    }


    */
/**
     * 根据传输层图书信息获取推荐图书的id列表
     * @param name 图书名称
     * @param categoryId 图书分类ID
     * @return 推荐图书的ID列表
     * @throws IOException IO异常
     *//*

    @GetMapping("/recommend-book/{name}/{categoryId}")
    public List<Integer> getRecommendBookListById(@PathVariable("name") String name, @PathVariable("categoryId") int categoryId) throws IOException
    {
        return bookService.getRecommendBookListById(name, categoryId);
    }


    */
/**
     * 根据搜索词获取该分类下的图书数量
     * @param searchTerm 搜索词
     * @return 该分类下的图书数量
     *//*

    @GetMapping("/search-count/{searchTerm}")
    public long getSearchTermBookCount(@PathVariable("searchTerm") String searchTerm) throws IOException
    {
        return bookService.getSearchTermBookCount(searchTerm);
    }


    */
/**
     * 根据搜索词获取指定搜索词图书列表
     *
     * @param page 页码
     * @param size 每页数量
     * @return 指定页的图书列表
     *//*

    @GetMapping("/search-book/{page}/{size}/{searchTerm}")
    public List<BookDTO> getSearchTermBookListBySearchTerm(@PathVariable("page") int page, @PathVariable("size") int size, @PathVariable("searchTerm") String searchTerm) throws IOException
    {
        return bookService.getSearchTermBookListBySearchTerm(page, size, searchTerm);
    }


    */
/**
     * 根据用户ID获取正在借阅图书数量
     * @param userId 用户ID
     * @return 借阅图书数量
     *//*

    @GetMapping("/borrow-count/{userId}")
    public long getBorrowingCountById(@PathVariable("userId") int userId) throws IOException
    {
        return bookService.getBorrowingCountById(userId);
    }


    */
/**
     * 根据用户ID获取正在借阅图书ID列表
     * @param userId 用户ID
     * @return 正在借阅图书ID列表
     *//*

    @GetMapping("/borrowing-book/{userId}")
    public List<String> getBorrowingIdListById(@PathVariable("userId") int userId) throws IOException
    {
        return bookService.getBorrowingIdListById(userId);
    }


    */
/**
     * 根据用户ID获取所有借阅图书ID列表
     * @param userId 用户ID
     * @return 所有借阅图书ID列表
     *//*

    @GetMapping("/borrow-book/{userId}")
    public List<String> getAllBorrowBookListById(@PathVariable("userId") int userId) throws IOException
    {
        return bookService.getAllBorrowBookListById(userId);
    }


    */
/**
     * 获取所有待删除的借阅信息的ID列表
     * @return 所有待删除的借阅图书ID列表
     *//*

    @DeleteMapping("/borrowing")
    public List<String> getDeleteBorrowingIdList() throws IOException
    {
        return bookService.getDeleteBorrowingIdList();
    }


    */
/**
     * 根据用户ID获取已归还的借阅图书总数量
     * @param userId 用户ID
     * @return 借阅图书数量
     *//*

    @GetMapping("/return-count/{userId}")
    public long getReturnCountById(@PathVariable("userId") int userId) throws IOException
    {
        return bookService.getReturnCountById(userId);
    }

    */
/**
     * 根据用户ID和搜索词获取借阅图书列表
     * @param userId 用户ID
     * @param searchTerm 搜索词
     * @return 借阅图书列表
     *//*

    @GetMapping("/borrow-book/{userId}/{searchTerm}")
    public List<String> getBorrowBookListBySearch(@PathVariable("userId") int userId, @PathVariable("searchTerm") String searchTerm) throws IOException
    {
        return bookService.getBorrowBookListBySearch(userId, searchTerm);
    }


    */
/**
     * 获取所有图书馆公告数量
     * @return 公告数量
     *//*

    @GetMapping("/notice-count")
    public long getAllLibraryNoticeCount() throws IOException
    {
        return bookService.getAllLibraryNoticeCount();
    }


    */
/**
     * 根据搜索词获取图书馆公告数量
     * @param searchTerm 搜索词
     * @return 公告数量
     *//*

    @GetMapping("/search-notice-count/{searchTerm}")
    public long getSearchLibraryNoticeCount(@PathVariable("searchTerm") String searchTerm) throws IOException
    {
        return bookService.getSearchLibraryNoticeCount(searchTerm);
    }


    */
/**
     * 根据搜索词获取指定搜索词图书公告列表
     *
     * @param page 页码
     * @param size 每页数量
     * @return 指定页的图书列表
     *//*

    @GetMapping("/search-notice/{page}/{size}/{searchTerm}")
    public List<NoticeDTO> getSearchLibraryNoticeByPage(@PathVariable("page") int page, @PathVariable("size") int size, @PathVariable("searchTerm") String searchTerm) throws IOException
    {
        return bookService.getSearchLibraryNoticeByPage(page, size, searchTerm);
    }

    */
/**
     * 获取所有待删除的图书馆公告ID列表
     * @return 所有待删除的图书馆公告ID列表
     *//*

    @DeleteMapping("/notice")
    public List<Integer> getDeleteLibraryNoticeIdList() throws IOException
    {
        return bookService.getDeleteLibraryNoticeIdList();
    }

}
*/
